package com.zkflzl.myinit.service.impl;

import com.aspose.words.Document;
import com.aspose.words.SaveFormat;
import com.zkflzl.myinit.common.BaseResponse;
import com.zkflzl.myinit.common.ErrorCode;
import com.zkflzl.myinit.common.ResultUtils;
import com.zkflzl.myinit.service.FileService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;

/**
 * @author <a href="https://gitee.com/zkflzl">zkflzl</a>
 */
@Service
@Slf4j
public class FileServiceImpl implements FileService {

    @Override
    public BaseResponse uploadToPDF(MultipartFile multipartFile) {
        // 保存文件的根路径
        String basePath = "src/main/resources/static/";

        // 创建保存文件的目录（如果不存在）
        File saveDir = new File(basePath);
        if (!saveDir.exists()) {
            saveDir.mkdirs();
        }

        try {
            // 加载 DOC 文件
            Document doc = new Document(multipartFile.getInputStream());
            // 设置保存 路径、文件名
            String fileName = multipartFile.getOriginalFilename();
            String pdfFilePath = basePath + fileName + ".pdf";
            // 将 DOC 文件保存为 PDF 文件
            doc.save(pdfFilePath, SaveFormat.PDF);

        } catch (Exception e) {
            // 处理保存过程中的异常
            return ResultUtils.error(ErrorCode.OPERATION_ERROR, "保存失败");
        }
        return ResultUtils.success("保存成功");
    }
}




